Apache Impala বিভিন্ন ধরনের ডেটা টেমপ্লেট বা ডেটা টাইপ সমর্থন করে, যা ব্যবহারকারীদের বিভিন্ন ধরনের ডেটা প্রসেসিং এবং বিশ্লেষণ করতে সক্ষম করে। Impala এর ডেটা টাইপগুলো প্রধানত SQL-ভিত্তিক এবং ডেটাবেসের কার্যকরী ব্যবহারের জন্য যথাযথভাবে ডিজাইন করা হয়েছে। এখানে Impala এর কিছু প্রধান ডেটা টাইপের আলোচনা করা হলো।
Impala এর সাপোর্টেড ডেটা টাইপস
Impala মোট ৫টি প্রধান ক্যাটাগরিতে ডেটা টাইপ সরবরাহ করে, যা যথাক্রমে নম্বরিক, ক্যারেক্টার, টাইমস্ট্যাম্প, লজিক্যাল, এবং স্ট্রাকচারড ডেটা টাইপ। নিচে প্রতিটি ক্যাটেগরির ডেটা টাইপ বিস্তারিতভাবে ব্যাখ্যা করা হলো।
1. নম্বরিক ডেটা টাইপ (Numeric Data Types)
এই ডেটা টাইপগুলি সংখ্যাসূচক ডেটা সংরক্ষণ করতে ব্যবহৃত হয়, যেমন পূর্ণসংখ্যা এবং ভগ্নাংশ।
- TINYINT
১ বাইটের সাইনড পূর্ণসংখ্যা, -১২৮ থেকে ১২৭ এর মধ্যে মান ধারণ করতে পারে। - SMALLINT
২ বাইটের সাইনড পূর্ণসংখ্যা, -৩২,৭৬৮ থেকে ৩২,৭৬৭ এর মধ্যে মান ধারণ করতে পারে। - INT
৪ বাইটের সাইনড পূর্ণসংখ্যা, -২,১৪৭,৪৮৩,৬৪৮ থেকে ২,১৪৭,৪৮৩,৬৪৭ এর মধ্যে মান ধারণ করতে পারে। - BIGINT
৮ বাইটের সাইনড পূর্ণসংখ্যা, -৯২২,০০০,০০০,০০০,০০০,০০০ থেকে ৯২২,০০০,০০০,০০০,০০০,০০০ এর মধ্যে মান ধারণ করতে পারে। - FLOAT
৪ বাইটের ফ্লোটিং পয়েন্ট সংখ্যা (Single Precision), ±৩.৪ x ১০^৩৮ থেকে ±৩.৪ x ১০^৩৮ এর মধ্যে। - DOUBLE
৮ বাইটের ফ্লোটিং পয়েন্ট সংখ্যা (Double Precision), ±১.৮ x ১০^৩০৮ থেকে ±১.৮ x ১০^৩০৮ এর মধ্যে। - DECIMAL (หรือ NUMERIC)
নির্দিষ্ট সঠিকতা এবং স্কেল সহ দশমিক সংখ্যা, যেমন ৩৫ সঠিকতা এবং ১০ স্কেল, অর্থাৎ ৩৫ ডিজিট এবং ১০টি ডেসিমাল পয়েন্ট।
2. ক্যারেক্টার ডেটা টাইপ (Character Data Types)
এই ডেটা টাইপগুলি টেক্সট ডেটা সংরক্ষণের জন্য ব্যবহৃত হয়।
- CHAR
স্থির দৈর্ঘ্যের স্ট্রিং, যার দৈর্ঘ্য ১ থেকে ২,০০০ পর্যন্ত হতে পারে। - VARCHAR
পরিবর্তনশীল দৈর্ঘ্যের স্ট্রিং, যেখানে স্ট্রিংয়ের দৈর্ঘ্য ১ থেকে ৮,০০০ পর্যন্ত হতে পারে। - STRING
পরিবর্তনশীল দৈর্ঘ্যের স্ট্রিং, যা হালকা এবং বৃহত্তর স্ট্রিং ডেটা সংরক্ষণে ব্যবহৃত হয়। এটি অনন্ত দৈর্ঘ্য ধারণ করতে পারে।
3. টাইমস্ট্যাম্প ডেটা টাইপ (Timestamp Data Type)
টাইমস্ট্যাম্প ডেটা টাইপ তারিখ এবং সময় সম্পর্কিত তথ্য ধারণ করতে ব্যবহৃত হয়।
- TIMESTAMP
এটি ১২০ বছর পরিমাণ সময়ের সাথে সম্পর্কিত ডেটা ধারণ করে, যা সেকেন্ড এবং মিলিসেকেন্ডের মধ্যে পার্থক্য প্রকাশ করতে সক্ষম। এটি ১৯৭০-০১-০১ ০০:০০:০০ থেকে ২২৭৪-১২-৩১ ২৩:৫৯:৫৯ এর মধ্যে সময় নির্দেশ করতে পারে।
4. লজিক্যাল ডেটা টাইপ (Logical Data Types)
এই টাইপটি বুলিয়ান মান সংরক্ষণ করতে ব্যবহৃত হয়।
- BOOLEAN
এটি একটি সত্য (True) বা মিথ্যা (False) মান সংরক্ষণ করে।
5. স্ট্রাকচারড ডেটা টাইপ (Structured Data Types)
এই ডেটা টাইপগুলি একাধিক মান ধারণ করতে পারে এবং এটি কমপ্লেক্স ডেটা স্ট্রাকচার গঠন করতে ব্যবহৃত হয়।
- ARRAY
এটি একটি ধারাবাহিক উপাদান ধারণ করে, যেখানে প্রতিটি উপাদান একই ডেটা টাইপের হতে হবে। উদাহরণস্বরূপ, একটি ইন্টিজার অ্যারে বা স্ট্রিং অ্যারে। - MAP
এটি একটি কীগুলির সাথে মান সংযুক্ত করে একটি ডেটা স্ট্রাকচার। প্রতিটি মান একটি নির্দিষ্ট কীর সাথে সম্পর্কিত থাকে। উদাহরণস্বরূপ,MAP<STRING, INT>। - STRUCT
এটি একটি ডেটা স্ট্রাকচার যা বিভিন্ন ডেটা টাইপের উপাদান ধারণ করে। এটি অন্যান্য ডেটা টাইপের মতো একটি কমপ্লেক্স ডেটা টাইপ গঠন করতে পারে। উদাহরণস্বরূপ,STRUCT<INT, STRING, BOOLEAN>।
Impala এর অন্যান্য সমর্থিত ডেটা টাইপ
এছাড়া, Impala আরও কিছু বিশেষ ডেটা টাইপ সমর্থন করে, যেমন:
- BINARY
এটি বাইনারি ডেটা সংরক্ষণ করে, যেমন ছবি বা ভিডিও ফাইল। - UUID
এটি ইউনিভার্সালি ইউনিক আইডেন্টিফায়ার (UUID) ধারণ করে, যা নির্দিষ্ট মান সহ একটি অনন্য আইডেন্টিফায়ার। - GEOGRAPHY
এটি ভূগোল সম্পর্কিত ডেটা যেমন স্থানাঙ্ক, মানচিত্র, লাইন ইত্যাদি ধারণ করতে ব্যবহৃত হয়।
সারাংশ
Apache Impala এর সাপোর্টেড ডেটা টাইপগুলি বিভিন্ন ধরনের ডেটা সংরক্ষণ এবং প্রসেস করার জন্য ডিজাইন করা হয়েছে। এর মধ্যে রয়েছে নম্বরিক, ক্যারেক্টার, টাইমস্ট্যাম্প, লজিক্যাল, এবং স্ট্রাকচারড ডেটা টাইপ। প্রতিটি ডেটা টাইপ Impala ব্যবহারকারীদের তাদের প্রয়োজনীয় ডেটা প্রক্রিয়াকরণ এবং বিশ্লেষণ সম্পাদন করার জন্য অত্যন্ত কার্যকরী।
Read more